Compositional Programming
نویسندگان
چکیده
Modularity is a key concern in programming. However, programming languages remain limited terms of modularity and extensibility. Small canonical problems, such as the Expression Problem (EP), illustrate some basic issues: dilemma between choosing one kind extensibility over another most languages. Other how to express dependencies modular way, add up issues significant challenge. This article presents new statically typed style called Compositional Programming . In Programming, there no EP: It easy get multiple dimensions (i.e., it variants well operations). offers an alternative way model data structures that differs from both algebraic datatypes functional conventional OOP class hierarchies. We introduce four concepts for Programming: compositional interfaces , traits method patterns nested trait composition Altogether, these allow us naturally solve challenges Problem, attribute-grammar-like programs, generally deal with programs complex present language design, CP which proved be type-safe, together several examples three case studies.
منابع مشابه
Compositional C++: Compositional Parallel Programming
A compositional parallel program is a program constructed by composing component programs in parallel where the composed pro gram inherits properties of its components In this paper we describe a small extension of C called Compositional C or CC which is an object oriented notation that supports compositional parallel programming CC integrates di erent paradigms of parallel pro gramming data pa...
متن کاملCompositional logic programming
Relational program derivation has gathered momentum over the last decade with the development of many specification logics. However, before such relational specifications can be executed in existing programming languages, they must be carefully phrased to respect the evaluation order of the language. In turn, this requirement inhibits the rapid prototyping of specifications in a relational nota...
متن کاملCompositional Relational Programming with Name Projection and Compositional Synthesis
CombInduce is a methodology for inductive synthesis of logic programs, which employs a reversible meta-interpreter for synthesis, and uses a compositional relational target language for efficient synthesis of recursive predicates. The target language, Combilog, has reduced usability due to the lack of variables, a feature enforced by the principle of compositionality, which is at the core of th...
متن کاملCompositional Analysis for Concurrent Constraint Programming
We propose a framework for the analysis of concurrent constraint programming (ccp). Our approach is based on simple denotational semantics which approximate the usual semantics in the sense that they give a superset of the input-output relation of a ccp program. Analyses based on these semantics can be easily and eeciently implemented using standard techniques from the analysis of logic programs .
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: ACM Transactions on Programming Languages and Systems
سال: 2021
ISSN: ['1558-4593', '0164-0925']
DOI: https://doi.org/10.1145/3460228